1. Technical Field of the Invention
The present invention relates to the field of messaging systems, and more particularly, to Internet chat forums.
2. Description of the Related Art
Internet Relay Chat (IRC), or simply “chat”, provides informal real-time communications among users of data network facilities. Chat allows two or more users to converse by exchanging text messages in substantially real-time, typically through a “channel” or virtual “chat room” maintained on one or more chat servers which communicate via the Internet. Chat room conversations are displayed as text in a chat client window on a participant's display screen, usually accompanied by a list of chat participants. The text displayed in the participant's chat client window typically includes a history of the conversation from the time that the viewing participant joined the chat room.
Chat applications are becoming increasingly popular among Internet users. Basic issues with chat client interfaces and the way in which chat text and/or information is presented, however, limit the utility of chat applications for more formal interactions and decision making tasks among users. Standard forms of chat introduce ambiguity into user interactions in a number of ways. The most profound ambiguity is the disruptive nature in which chat messages are displayed within a chat client. Typically, chat messages are displayed in the order in which the chat text messages are received by the chat client. In consequence, listed chat messages do not have any logical ordering that would enable one to easily follow a given conversation. The problem is further exacerbated when a user engages in multiple chat conversations. In that case, chat messages corresponding to any one of several different conversations are posted in the order in which the chat messages are received, thereby making it difficult to follow each individual conversation.
One attempted solution has been to post response chat messages beneath the message to which the chat response is directed. The chat messages can be organized in a hierarchical tree structure. Although this manner of displaying chat messages does clarify query-response interactions among users, also known as turn-taking, displaying messages in a hierarchical tree structure can be cumbersome for a user. In particular, in order to respond to a previous chat message, the user must search through the chat history, locate the particular chat message to which the user wishes to respond, and insert a response beneath the identified chat message. As the chat messages of a particular session frequently extend beyond the viewable portion of a display, the user must scroll throughout what is often a lengthy chat history to locate pertinent chat messages. Moreover, because the newly created chat message response appears within the receiving chat client in the same location of the hierarchical tree structure where the sending user inserted the chat message, the recipient user must constantly scroll through the chat history to detect new chat messages. This can be especially cumbersome where a user wishes to engage in several conversations. In consequence, this approach has been shown to consume valuable time leading to a reduction in levels of user interaction.
Another attempted solution has been to utilize individual windows for each separate chat conversation. Some chat clients allow a new window to be opened for each new conversation. Each window can include its own set of chat conversation participants. Although this approach facilitates the tracking of individual conversations, the multi-window approach suffers from some of the same deficiencies as the hierarchical tree structure approach. Specifically, in order to keep abreast of all of the conversations in which a user is involved, the user must continually scan each of the open chat client windows. Further, a user may be required to undertake several actions before generating a chat message, thereby causing a time lag between the received message and the user's response. For example, if the user wishes to respond to a particular chat message within an inactive chat client window, the user must first select or activate the window and then place the curser within the portion of the window for typing a text message. This can significantly increase the time required for a user to respond to chat messages, especially in cases where the user is actively involved in multiple conversations.